// 0 #CEC2AB    -2570329
// 2 #ECE4DB    -1121062
// 4 #E8DCC7    -1319739
// 8 #EBB583    -675205
// 16 #E99A6D   -616860
// 32 #F67F5D   -557219
// 64 #FA7911   -34286
// 128 #D06E41  -2593220
// 256 #F55F41  -33770
// 512 #ECCF77  -91541
// 1024 #F1D43B -338619

//  258     485     715     925 
//  762
//  986
//  1182
//  1446

// 申请截图权限
function prepareThings(){
    if(!requestScreenCapture()){
        
        exit();
    }
}
// 截图并返回图片
function getCaptureImg(){
    var img0 = captureScreen();
    sleep(100);
    if(img0 == null || typeof(img0) == 'undefined'){
        exit();
    }else{
        return img0;
    }
}
// 图片转矩阵
function img2array(img){
    var m = {3226968:0, 1121062:1, 1319739:2, 675205:3, 616860:4,557219:5, 361967:6, 3052483:7, 697284: 8, 1192333:9, 928965:10}
    var res = []
    var y = [826, 1045, 1272, 1495];
    var x = [206, 444, 660, 869];
    for(var i = 0; i < 4; i ++){
        var temp = []
        for(var j = 0; j < 4; j ++){
            
            var value = images.pixel(img, x[j], y[i]);
            // toast('y ' + y[i] + ', x ' + x[j] + ' v ' + value)
            if(m[-value] == null || m[-value] == 'undefined'){
                temp.push(11)
            }else{
                temp.push(m[-value]);
            }
            
        }
        res.push(temp)
    }
    return res;
}
//移动，本质是滑动
function move(dire){
    // toast(dire)
    switch(dire){
        case 'up':
            swipe(500, 2000, 500, 1000, 1000);
        break;
        case 'down':
            swipe(500, 1000, 500, 2000, 1000);
        break;
        case 'left':
            swipe(900, 1600, 100, 1600, 1000);
        break;
        case 'right':
            swipe(100, 1600, 900, 1600, 1000);
        break;
    }
}
// 获取下一个移动方向
function getNextMove(curBlockStr){
    response = http.get("http://192.168.1.141:5000/nextMove?value=" + curBlockStr)
    return response.body.string()
}
function main(){
    prepareThings()
    // toast('???')
    m = "?"
    while(m != "stop"){
        img0 = getCaptureImg();
        // toast(images.pixel(img0, 444, 826))
        m = getNextMove(JSON.stringify(img2array(img0)));
        // toast(m)
        if(m == 'stop'){
            break;
        }
        move(m)
        sleep(1000);
    }
    
    
}
// prepareThings()
// img0 = getCaptureImg();
// toast(images.pixel(img0, 206, 1045))
main()
// getNextMove('[[0,0,0,0],[1,7,0,0],[0,0,0,0],[0,0,0,0]]')